<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    #d1{
      width: 100px;
      height: 100px;
      border: 1px solid red;
      /*单独某一个方向添加外边距*/
      margin-left: 100px;
      margin-top: 50px;
      margin-bottom: 50px;
      margin-right: 50px;
      /*四个方向赋值*/
      margin: 30px;
      /*上下和左右赋值*/
      margin: 50px 100px;
      /*上右下左顺时针赋值*/
      margin: 10px 20px 30px 40px;
    }
    #d2{
      width: 100px;
      height: 100px;
      border: 1px solid red;
      /*外边距塌陷问题,导致上下相邻的兄弟元素彼此添加外边距取最大值*/
      margin-top: 30px;
    }
    #s1{margin-right: 50px;margin-bottom: 50px}
    #s2{margin-left: 50px}
    #big{
      width: 200px;
      height: 200px;
      background-color: green;
      overflow: hidden;/*解决外边距塌陷导致的粘连问题*/
    }
    #big>div{
      width: 50px;
      height: 50px;
      background-color: red;
      margin-left: 50px;
      /*外边距塌陷导致父子元素在给子元素添加上外边距时,父元素的外边距和子元素的外边距
      取最大值, 这样的话就会出现父子元素粘连到一起的问题,
      在父元素中添加overflow:hidden样式解决此问题*/
      margin-top: 50px;
    }
  </style>
</head>
<body>
<div id="big">
  <div></div>
</div>
<span id="s1">span1</span><span id="s2">span2</span>
<div id="d1">div1</div>
<div id="d2">div2</div>
</body>
</html>